package oop.java0321;

import java.util.Scanner;

/**
 * 公司有公司名称，注册地址，电话，经营范围等属性，公司有很多员工（暂用String数组表示），公司有招聘员工方法，有输出员工信息方法，以及辞退员工方法(*选做)。
 * 用oo的思想模拟
 */
public class Company {
    String name;
    String address;
    String telePhone;
    String scope;    //经营范围
    int numberOfEmployee;//员工数量，索引
    String[] employee = new String[10];
    Scanner in = new Scanner(System.in);

    //输出公司信息
    public void showCompanyInfo() {
        System.out.println("公司名称：" + name);
        System.out.println("地址：" + address);
        System.out.println("电话：" + telePhone);
        System.out.println("经营范围：" + scope);
    }

    //招聘方法
    public void addEmployee() {
        for (int i = 0; i < employee.length; i++) {
            if (employee[i] == null) {
                System.out.println("姓名：");
                employee[i] = in.next();
                //员工数量加一
                numberOfEmployee++;
                System.out.println("欢迎" + employee[i] + "入职" + name);
                return;
            }
        }
        System.out.println("员工充足，不再招人！");
    }

    //输出全体员工信息
    public void showAllInfo() {
        for (int i = 0; i < numberOfEmployee; i++) {
            System.out.print(employee[i] + "\t");
        }
        if(numberOfEmployee==0){
            System.out.println("公司还没有员工！");
        }

    }

    //输出指定位置上的员工信息
    public void showIndexInfo(int index) {
        if (index >= 0 && index < numberOfEmployee) {
            System.out.println(employee[index]);
            return;
        }
        System.out.println("未查到相关信息！");
    }

    //辞退员工(通过姓名)
    public void dissmissEmployee(String dissmissName) {
        for (int i = 0; i < numberOfEmployee; i++) {
            if (employee[i].equals(dissmissName)) {
                //从找到的员工位置到numberOfEmployee-1,数据前移一位
                for (int j = i; j < numberOfEmployee - 1; j++) {
                    employee[j] = employee[j + 1];
                }
                //最后一位设置为空
                employee[numberOfEmployee - 1] = null;
                //员工人数减一
                System.out.println("成功辞退！");
                numberOfEmployee--;
                return;
            }
        }
        System.out.println("未找到该员工！");
    }
}
